package com.yangxk.kadmin.auth.config;

import com.yangxk.kadmin.auth.beans.TableBean;
import com.yangxk.kadmin.auth.beans.UserBean;
import com.yangxk.kadmin.auth.beans.WhiteListBean;

import javax.servlet.http.HttpServletRequest;

/**
 * 权限配置接口
 *  对权限的相关配置需要实现该类。
 *  如果实现了该类，则会自动配置权限相关的bean,即启用权限
 *  否则，权限则不会启用
 *
 * @author yangxk
 * @date 2018/9/9 14:10
 */
public interface AuthConfigure {

    /**
     * 设置权限表相关信息
     * create by yangxk 2018/9/9 14:13
     */
    default void setTableInfo(TableBean tableBean){

    }

    /**
     * 设置权限白名单
     * 默认配置了如下地址:
     *  /login
     *  /logout
     *  /error
     * @param whiteList
     */
    default void setWhiteList(WhiteListBean whiteList){

    }

    /**
     * 获取当前登录用户的ID
     * create by yangxk 2018/9/9 14:14
     */
    String curentUserId(HttpServletRequest request);
}
